<?xml version="1.0" encoding="UTF-8"?>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:rich="http://richfaces.org/rich"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:a4j="http://richfaces.org/a4j"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets">
    <h:head>
        <title>Consultar Solicitudes</title>
    </h:head>
    <h:body>
        <ui:composition template="../templateInt.xhtml">
            <ui:define name="content">
                <h:form>
                    <a4j:outputPanel id="reportesOutputPanel" ajaxRendered="true">
                        <rich:collapsiblePanel id="opcionesSolicitudesCollapsiblePanel" header="#{msj.collapsibleOpcionesSolicitud}" 
                                               expanded="true" >
                            <h:panelGrid columns="6">
                                <h:outputText value="Id Solicitud"/>
                                <h:inputText id="idSolicitudOutputText" value="#{consultaSolicitudesBean.idSolicitud}" 
                                             onkeypress="if (event.which &lt; 48 || event.which &gt; 57)
                                                         return false;"/>
                                <h:outputText id="accionSolicitudOutputText" value="Accion" />
                                <h:selectOneMenu id="accionesSelect" value="#{consultaSolicitudesBean.accionSeleccionada}">
                                    <f:selectItem noSelectionOption="true" itemLabel="Seleccione una accion"/>
                                    <f:selectItems value="#{consultaSolicitudesBean.accionesItems}"/>
                                </h:selectOneMenu>
                                <h:outputText value="Nombre Solicitante" rendered="#{seguridadBean.isAprobador}"/>
                                <h:inputText id="nombreSolicitanteOutputTextAprob" value="#{consultaSolicitudesBean.nombreSolicitante}"
                                             rendered="#{seguridadBean.isAprobador}"/>
                                <h:outputText value="Apellido Solicitante" rendered="#{seguridadBean.isAprobador}"/>
                                <h:inputText id="apellidoSolicitanteOutputTextAprob" value="#{consultaSolicitudesBean.apellidoSolicitante}"
                                             rendered="#{seguridadBean.isAprobador}"/>
                                <h:outputText value="Nombre Solicitante" rendered="#{seguridadBean.isAsignador}"/>
                                <h:inputText id="nombreSolicitanteOutputTextAsig" value="#{consultaSolicitudesBean.nombreSolicitante}" 
                                             rendered="#{seguridadBean.isAsignador}"/>
                                <h:outputText value="Apellido Solicitante" rendered="#{seguridadBean.isAsignador}"/>
                                <h:inputText id="apellidoSolicitanteOutputTextAsig" value="#{consultaSolicitudesBean.apellidoSolicitante}"
                                             rendered="#{seguridadBean.isAsignador}"/>
                                <h:outputText value="Nombre Ejecutor" rendered="#{seguridadBean.isAsignador}"/>
                                <h:inputText id="nombreEjecutorOutputTexAsig" value="#{consultaSolicitudesBean.nombreEjecutor}"
                                             rendered="#{seguridadBean.isAsignador}"/>
                                <h:outputText value="Apellido Ejecutor" rendered="#{seguridadBean.isAsignador}"/>
                                <h:inputText id="apellidoEjecutorOutputTextAsig" value="#{consultaSolicitudesBean.apelldoEjecutor}" 
                                             rendered="#{seguridadBean.isAsignador}"/>
                                <h:outputText id="estadoSolicitudOutputText" value="Estado" />
                                <h:selectOneMenu id="estadosSelect" value="#{consultaSolicitudesBean.estadoSeleccionado}">
                                    <f:selectItem noSelectionOption="true" itemLabel="Seleccione un estado de solicitud"/>
                                    <f:selectItems value="#{consultaSolicitudesBean.estadosItems}"/>
                                </h:selectOneMenu>
                                <h:outputText value="Aplicación" id="aplicacionOutputText"/>
                                <h:selectOneMenu id="aplicacionSelect" value="#{consultaSolicitudesBean.aplicacionSeleccionada}">
                                    <f:selectItem noSelectionOption="true" itemLabel="Seleccione una aplicación"/>
                                    <f:selectItems value="#{consultaSolicitudesBean.aplicacionesItems}"/>
                                    <a4j:ajax execute="@this" listener="#{consultaSolicitudesBean.llenarPerfiles()}" render="perfilSelect" event="change"/>
                                </h:selectOneMenu>
                                <h:outputText id="perfilAplicacionAsigOutputText" value="Perfil"/>
                                <h:selectOneMenu id="perfilAsigSelect" value="#{consultaSolicitudesBean.perfilSeleccionado}">
                                    <f:selectItem noSelectionOption="true" itemLabel="Seleccione un perfil"/>
                                    <f:selectItems value="#{consultaSolicitudesBean.perfilesItems}"/>
                                </h:selectOneMenu>
                                <h:outputText id="inicioBusquedaOutputText" value="Fecha Inicio Busqueda"/>
                                <rich:calendar id="fechaInicioBusqueda" datePattern="dd/MM/yyyy" timeZone="#{timeZone.timeZone}" 
                                               value="#{consultaSolicitudesBean.fechaInicioBusqueda}">
                                    <f:convertDateTime type="date" pattern="dd/MM/yyyy" timeZone="#{timeZone.timeZone}"/>
                                </rich:calendar>
                                <h:outputText id="finBusquedaOutputText" value="Fecha Fin Busqueda"/>
                                <rich:calendar id="fechaFinBusqueda" datePattern="dd/MM/yyyy" timeZone="#{timeZone.timeZone}" 
                                               value="#{consultaSolicitudesBean.fechaFinalBusqueda}">
                                    <f:convertDateTime type="date" pattern="dd/MM/yyyy" timeZone="#{timeZone.timeZone}"/>
                                </rich:calendar>
                                <h:outputText id="gerenciaAprobadoraAprobOutputText" value="Gerencia" rendered="#{seguridadBean.isAsignador}"/>
                                <h:selectOneMenu id="gerenciaAprobSelect" value="#{consultaSolicitudesBean.gerenciaAprobadoraSeleccionada}"
                                                 rendered="#{seguridadBean.isAsignador}">
                                    <f:selectItem noSelectionOption="true" itemLabel="Seleccione una Gerencia"/>
                                    <f:selectItems value="#{consultaSolicitudesBean.gerenciasItems}"/>
                                </h:selectOneMenu>
                            </h:panelGrid>
                            <a4j:commandButton id="buscarButton" value="#{msj.buttonBuscar}" actionListener="#{consultaSolicitudesBean.buscarSolicitudes}"
                                               render="reportesDataTableRegion"/>
                            <a4j:commandButton id="limpiarButton" value="#{msj.buttonLimpiar}" actionListener="#{consultaSolicitudesBean.limpiarCampos}" 
                                               render="reportesDataTableRegion"/>
                        </rich:collapsiblePanel>
                    </a4j:outputPanel>
                    <br/>
                    <center>
                        <a4j:outputPanel id="reportesDataTableRegion" ajaxRendered="true">
                            <rich:dataTable id="reportesDataTable" value="#{consultaSolicitudesBean.solicitudes}" var="solicitud"
                                            rows="#{consultaSolicitudesBean.filas}">
                                <f:facet name="header">
                                    <h:outputText value="#{msj.headerDataTableSolicitudes}"/>
                                </f:facet>
                                <rich:column id="idSolicitudColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Id Solicitud"
                                                             execute="@this" action="#{consultaSolicitudesBean.ordenar()}"
                                                             render="reportesDataTable">
                                                <f:param name="sortProperty" value="idSolicitud"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaSolicitudesBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaSolicitudesBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="idSolicitudOutputText" value="#{solicitud.idSolicitud}" />
                                </rich:column>
                                <rich:column id="fechaSolicitudColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Fecha"
                                                             execute="@this" action="#{consultaSolicitudesBean.ordenar()}"
                                                             render="reportesDataTable">
                                                <f:param name="sortProperty" value="fechaSolicitud"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaSolicitudesBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaSolicitudesBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="fechaSolicitudOutputText" value="#{solicitud.fechaSolicitud}">
                                        <f:convertDateTime type="date" pattern="dd/MM/yyyy HH:mm"/>
                                    </h:outputText>
                                </rich:column>
                                <rich:column id="descripcionSolicitudColum" width="650px">
                                    <f:facet name="header">
                                        <h:outputText value="Solicitud"></h:outputText>
                                    </f:facet>
                                    <h:outputText id="nombreSolicitudOutputText" value="#{solicitud.descripcion}"/>
                                </rich:column>
                                <rich:column id="gerenciaAprobadoraSolicitudColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Gerencia Aprobadora"
                                                             execute="@this" action="#{consultaSolicitudesBean.ordenar()}"
                                                             render="reportesDataTable">
                                                <f:param name="sortProperty" value="gerenciaAprobadora.nombre"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaSolicitudesBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaSolicitudesBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="gerenciaAprobadoraSolicitudOutputText" value="#{solicitud.gerenciaAprobadora.nombre}"/>
                                </rich:column>
                                <rich:column id="gerenciaAsignadoraSolicitudColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Gerencia Asignadora"
                                                             execute="@this" action="#{consultaSolicitudesBean.ordenar()}"
                                                             render="reportesDataTable">
                                                <f:param name="sortProperty" value="gerenciaAsignadora.nombre"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaSolicitudesBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaSolicitudesBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="gerenciaAsignadoraSolicitudOutputText" value="#{solicitud.gerenciaAsignadora.nombre}"/>
                                </rich:column>
                                <rich:column id="estadoSolicitudColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Estado"
                                                             execute="@this" action="#{consultaSolicitudesBean.ordenar()}"
                                                             render="reportesDataTable">
                                                <f:param name="sortProperty" value="estado.nombre"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaSolicitudesBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaSolicitudesBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="estadoSolicitudOutputText" value="#{solicitud.estado.nombre}"/>
                                </rich:column>
                                <f:facet name="footer" >
                                    <rich:dataScroller for="reportesDataTable" rendered="#{consultaSolicitudesBean.paginado()}" maxPages="5"/>
                                </f:facet>
                            </rich:dataTable>
                        </a4j:outputPanel>
                    </center>
                </h:form>
            </ui:define>
        </ui:composition>
    </h:body>
</html>